//var weburl = "http://127.0.0.1:8080/";
var weburl = "/";

/**
 * ajax全局拦截器
 */

if(typeof($)!='undefined'){//判断是否有jquery了
    $.ajaxSetup({
        beforeSend:function(xhr,request){
            if(request.url && (request.url.indexOf("img3.winshang.com")==-1) ){//需要排除掉img  如果拦截了图片，那么会上传不了的
                xhr.setRequestHeader('userName',localStorage.getItem('userName'));
                xhr.setRequestHeader('userToken',localStorage.getItem('userToken'));
            }
        }
        //headers: { 'adminUid': localStorage.getItem('adminUid'), 'token': localStorage.getItem('token') },
    });
}


/**
 * 默认异步
 * @param jk 接口地址，如果不带http就使用默认地址
 * @param data 入参实体
 * @param httpMethod 请求传参方式
 * @param callback 回调函数
 */
function requestApiPgs(jk, data, httpMethod, beforeCall , successCall) {
    requestApiAsyncWithProgress(jk, data, httpMethod, beforeCall , successCall, true)
}

/**
 * 默认同步
 * @param jk 接口地址，如果不带http就使用默认地址
 * @param data 入参实体
 * @param httpMethod 请求传参方式
 * @param callback 回调函数
 */
function requestApiTbPgs(jk, data, httpMethod,  beforeCall,  successCall ) {
    requestApiAsyncWithProgress(jk, data, httpMethod, beforeCall,  successCall,false)
}

/**
 * 可以选择是否异步
 * @param jk 接口地址，如果不带http就使用默认地址
 * @param data 入参实体
 * @param httpMethod 请求传参方式
 * @param callback 回调函数
 * @param async 是否异步接口
 */
function requestApiAsyncWithProgress(jk, data, httpMethod, beforeCall,  successCall ,async) {
    var url=jk;
    if(url.indexOf("http")<0){
        url=weburl+jk;
    }
    $.ajax({
        withCredentials:true,
        async: async, //是否异步请求
        url: weburl + jk,
        type: httpMethod,
        dataType: "json",
        contentType: "application/json; charset=utf-8",
        data: JSON.stringify(data),
        headers: { 'userName': localStorage.getItem('userName'), 'userToken': localStorage.getItem('userToken'), 'form': 'pc' },
        beforeSend: function( xhr, opts ){
            beforeCall(xhr, opts);
        },
        success: function(json) {
            successCall(json)
        },
        error: function() {
            //alert("网络错误");
        }
    });
}



/**
 * 默认异步
 * @param jk 接口地址，如果不带http就使用默认地址
 * @param data 入参实体
 * @param httpMethod 请求传参方式
 * @param callback 回调函数
 */
function requestApi(jk, data, httpMethod, callback) {
    requestApiAsync(jk, data, httpMethod, callback,true)
}

/**
 * 默认同步
 * @param jk 接口地址，如果不带http就使用默认地址
 * @param data 入参实体
 * @param httpMethod 请求传参方式
 * @param callback 回调函数
 */
function requestApiTB(jk, data, httpMethod, callback) {
    requestApiAsync(jk, data, httpMethod, callback,false)
}

/**
 * 可以选择是否异步
 * @param jk 接口地址，如果不带http就使用默认地址
 * @param data 入参实体
 * @param httpMethod 请求传参方式
 * @param callback 回调函数
 * @param async 是否异步接口
 */
function requestApiAsync(jk, data, httpMethod, callback,async) {
    var url=jk;
    if(url.indexOf("http")<0){
        url=weburl+jk;
    }

    $.ajax({
        withCredentials:true,
        async: async, //是否异步请求
        url: weburl + jk,
        type: httpMethod,
        dataType: "json",
        contentType: "application/json; charset=utf-8",
        data: JSON.stringify(data),
        //headers: {'uid':'888888', 'pwd':'965eb72c92a549dd','type':'wap'},
        headers: { 'userName': localStorage.getItem('userName'), 'userToken': localStorage.getItem('userToken'), 'form': 'pc' },

        // xhrFields: {
        //     withCredentials: true
        // },

        success: function(json) {
            callback(json)
        },
        error: function() {
            //alert("网络错误");
        }
    });
}

function getUrlParms() {
    var args = new Object();
    var query = location.search.substring(1); //获取查询串
    var pairs = query.split("&"); //在逗号处断开
    for (var i = 0; i < pairs.length; i++) {
        var pos = pairs[i].indexOf('='); //查找name=value
        if (pos == -1) continue; //如果没有找到就跳过
        var argname = pairs[i].substring(0, pos); //提取name
        var value = pairs[i].substring(pos + 1); //提取value
        args[argname] = unescape(decodeURI(value)); //存为属性
    }
    return args;
}